#lang racket


(provide degrees<-radians
         radians<-degrees
         º
         2pi
         pi/2
         pi/4
         pi/6
         *2
         /2
         ^2)


(define (degrees<-radians radians)
  (/ (* radians 180.0) pi))

(define (radians<-degrees degrees)
  (* (/ degrees 180) pi))

(define (º degrees)
  (radians<-degrees degrees))

(define (coterminal radians)
  (let ((k (floor (/ radians 2pi))))
    (- radians (* k 2pi))))


(define 2pi (* 2 pi))
(define pi/2 (/ pi 2))
(define pi/4 (/ pi 4))
(define pi/6 (/ pi 6))


(define (*2 x)
  (* x 2))

(define (/2 x)
  (/ x 2))

(define (^2 x)
  (* x x))